<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>call-apply-bind</title>
</head>
<body>
    <script>
        //声明一个函数
        function add(a, b){
            console.log(this);
            return a + b;
        }

        //调用函数
        // console.log(add(1, 2));

        //call 调用函数 
        var obj = {name: 'H5220307'}
        // console.log(add.call(obj, 2, 3));

        //apply 调用函数
        // console.log(add.apply(obj, [4,5]));

        //bind 返回一个新的函数, 并修改函数运行时 this
        // nfun 是一个函数, 代码与 add 一模一样
        var nfun = add.bind(obj);

        console.log(nfun(100, 200));

    </script>
</body>
</html>